package com.fhzz.service;

import java.util.List;

import com.fhzz.model.Permission;
import com.fhzz.model.Role;
import com.fhzz.model.User;
import com.fhzz.model.UserRole;



public interface SystemService {
	
	public List<User> getAllUsers();
	
	public List<User> getPageUsers(int pagenum, int pagesize);
	
	public User getUserById(int id);
	
	public List<Role> getRoles();
	
	public void deleteUser(int uid);
	
	public void addUser(User user,String[] rolenames);
	
	public void addUser(User user);//只添加用户，无角色添加
	
	public void updateUser(int uid,User user,String[] rolenames);
	
	public List<Role> getPageRoleInfo(int pagenum, int pagesize);
	
	public List<Role> getRoleInfo();
	
	public List<Permission> getPermisions();
	/**
	 * 使用用户id获取角色id列表
	 * @param userid
	 * @return
	 */
	public List<UserRole> listRolesByUserid(int userid);
	
	
	public void addRole(Role role, String[] permissionnames);
	
	public void deleteRole(int rid);
	
	public Role getRoleById(int rid);
	
	public void deleteRolePermission(int rid);//删除rid的角色下的所有权利
	
	public void updateRole(int rid,String[] permissionnames);//把所有的权利permissionnames添加到rid的角色下
	
	public List<Permission> getPagePermisions(int pagenum, int pagesize);
	
	public void addPermission(String permissionname);
	
	
	public void deletePermission(int pid);
	
	/**
	 * 根据用户名获取uid
	 * @param username
	 * @return
	 */
	public int getUidByUsername(String username);
}
